<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    /*
    
    重点是第二个条件，你可以从删除的元素中找任意一个，返回栈顶，求的也是最终栈顶的最大值。
很容易想到我们尽可能删除多点元素（有放回的时候最多删除k –-1)，
这样可挑选的数字更多，然后从这些数中挑选最大的放回去就可以。注意处理一下边缘条件。
    */
    var maximumTop = function (nums, k) {
      if (k === 0) {
        return nums[0]
      }
      if (k === 1) {
        return nums[1] ?? -1
      }
      if (nums.length === 1 && (k % 2 === 1)) {
        return -1
      }

      const slice = nums.slice(0, k - 1)
      return Math.max(...slice, nums[k] || 0)
    };

    console.log(maximumTop())
  </script>
</body>

</html>